@echo off
chcp 65001 >nul
echo ================================================
echo 应收账款统计表 - 修复UI优化版本打包工具
echo ================================================
echo.

echo [1/6] 检查Python环境...
python --version
if errorlevel 1 (
    echo 错误：未找到Python环境！
    echo 请先安装Python 3.7或更高版本
    pause
    exit /b 1
)

echo.
echo [2/6] 检查源文件...
if not exist "应收账款统计表_优化界面.py" (
    echo 错误：找不到 应收账款统计表_优化界面.py 文件！
    echo 请确保文件在当前目录中
    pause
    exit /b 1
)

echo ✅ 源文件检查完成

echo.
echo [3/6] 安装和更新依赖包...
echo 正在安装核心依赖...
pip install --upgrade pip
pip install --upgrade pandas openpyxl tkcalendar
echo 正在安装打包工具...
pip install --upgrade pyinstaller
echo ✅ 依赖安装完成

echo.
echo [4/6] 清理旧的打包文件...
if exist "build" (
    rmdir /s /q "build"
    echo 已清理 build 目录
)
if exist "dist" (
    rmdir /s /q "dist"
    echo 已清理 dist 目录
)
if exist "应收账款统计表_优化界面.spec" (
    del /q "应收账款统计表_优化界面.spec"
    echo 已清理 spec 文件
)
echo ✅ 清理完成

echo.
echo [5/6] 开始打包优化界面版本...
echo 使用增强的打包配置...

pyinstaller ^
    --onefile ^
    --windowed ^
    --name="应收账款统计表_优化界面_修复版" ^
    --add-data="order_data.json;." ^
    --hidden-import=tkinter ^
    --hidden-import=tkinter.ttk ^
    --hidden-import=tkinter.messagebox ^
    --hidden-import=tkinter.font ^
    --hidden-import=tkinter.filedialog ^
    --hidden-import=tkcalendar ^
    --hidden-import=tkcalendar.calendar_ ^
    --hidden-import=tkcalendar.dateentry ^
    --hidden-import=pandas ^
    --hidden-import=openpyxl ^
    --hidden-import=openpyxl.workbook ^
    --hidden-import=openpyxl.worksheet ^
    --hidden-import=openpyxl.styles ^
    --hidden-import=openpyxl.styles.font ^
    --hidden-import=openpyxl.styles.fills ^
    --hidden-import=openpyxl.styles.borders ^
    --hidden-import=openpyxl.styles.alignment ^
    --hidden-import=openpyxl.utils ^
    --hidden-import=openpyxl.utils.cell ^
    --hidden-import=threading ^
    --hidden-import=time ^
    --hidden-import=json ^
    --hidden-import=os ^
    --hidden-import=datetime ^
    --hidden-import=sys ^
    --hidden-import=_tkinter ^
    --collect-all=tkinter ^
    --collect-all=tkcalendar ^
    --exclude-module=matplotlib ^
    --exclude-module=scipy ^
    --exclude-module=IPython ^
    --exclude-module=jupyter ^
    --exclude-module=notebook ^
    --exclude-module=qtpy ^
    --exclude-module=PySide2 ^
    --exclude-module=PyQt5 ^
    --exclude-module=PIL ^
    --exclude-module=pillow ^
    --exclude-module=numpy ^
    --exclude-module=sklearn ^
    --exclude-module=tensorflow ^
    --exclude-module=torch ^
    --clean ^
    --noconfirm ^
    "应收账款统计表_优化界面.py"

if errorlevel 1 (
    echo.
    echo ❌ 打包失败！
    echo 请检查错误信息并手动解决
    echo.
    echo 常见解决方案：
    echo 1. 确保Python版本为3.7+
    echo 2. 尝试重新安装依赖：pip install --upgrade pandas openpyxl tkcalendar
    echo 3. 检查文件是否存在语法错误
    pause
    exit /b 1
)

echo.
echo [6/6] 验证打包结果...
if exist "dist\应收账款统计表_优化界面_修复版.exe" (
    echo ✅ 打包验证成功！
    
    for %%F in ("dist\应收账款统计表_优化界面_修复版.exe") do (
        set size=%%~zF
        set /a size_mb=!size! / 1048576
    )
    
    echo.
    echo ================================================
    echo ✨ 优化界面版本打包成功！（已修复颜色兼容性）
    echo ================================================
    echo.
    echo 📁 文件位置：dist\应收账款统计表_优化界面_修复版.exe
    echo 📊 文件大小：约 !size_mb! MB
    echo.
    echo 🎨 优化界面特色：
    echo ✨ 现代化卡片式布局设计
    echo 🎯 按钮悬停动画效果  
    echo 📱 响应式界面布局
    echo 🌈 专业渐变配色方案
    echo 🔄 状态栏动态反馈
    echo 💫 阴影和立体效果（已修复兼容性）
    echo 🛠️ 颜色格式完全兼容Tkinter
    echo.
    echo 🚀 使用说明：
    echo 1. 将 应收账款统计表_优化界面_修复版.exe 复制到目标位置
    echo 2. 双击运行即可，无需Python环境
    echo 3. 享受全新的现代化界面体验
    echo 4. 数据会自动保存在exe同目录的order_data.json文件中
    echo 5. 已修复颜色兼容性问题，确保在所有Windows版本正常运行
    echo.
    echo 🔧 故障排除：
    echo - 如果界面显示异常，请尝试管理员权限运行
    echo - 如果缺少DLL，请安装Microsoft Visual C++ Redistributable
    echo - 如果字体显示异常，请确保系统已安装微软雅黑字体
    echo.
) else (
    echo ❌ 打包验证失败！
    echo dist 目录中未找到可执行文件
)

echo.
echo 🎉 打包流程完成！
pause
